package com.zjpavt.client.page.basepage;

import com.zjpavt.client.page.abstractpage.AbstractSonPage;
import com.zjpavt.client.page.intefacepage.BasePage;
import com.zjpavt.client.page.intefacepage.OwnerPage;
import com.zjpavt.client.page.intefacepage.ParentPage;
import com.zjpavt.client.page.intefacepage.SonPage;

/**
 * 子页面持有对象用于完成子页面的基本功能
 * @author zyc
 */
public class BaseSonPage extends AbstractSonPage implements OwnerPage {
    /**
     * 是作为哪个页面的部分
     * 该页面也是一个SonPage
     */
    private SonPage owner;

    /**
     *
     * @param pageNum
     * @param parentPage 父页面
     * @param mRefreshPeriod
     * @param basePage 持有者对象
     */
    public BaseSonPage(int pageNum, ParentPage parentPage, long mRefreshPeriod, SonPage basePage) {
        super(pageNum, parentPage, mRefreshPeriod);
        this.owner = basePage;
    }

    @Override
    public void close() {
        this.owner.close();
    }

    @Override
    public void refreshPage() {
        this.owner.refreshPage();
    }


    @Override
    public BasePage getOwnerPage() {
        return owner;
    }
}
